std::literals::chrono_literals:: operator""ns
|
Definido en el encabezado
<chrono>
|
||
|
constexpr
std::
chrono
::
nanoseconds
operator "" ns ( unsigned long long nsec ) ; |
(1) | (desde C++14) |
|
constexpr
std::
chrono
::
duration
<
/*unspecified*/
,
std::
nano
>
operator "" ns ( long double nsec ) ; |
(2) | (desde C++14) |
Forma un literal std::chrono::duration que representa nanosegundos.
Contenidos |
Parámetros
| nsec | - | el número de nanosegundos |
Valor de retorno
El literal std::chrono::duration .
Implementación posible
constexpr std::chrono::nanoseconds operator""ns(unsigned long long ns) { return std::chrono::nanoseconds(ns); } constexpr std::chrono::duration<long double, std::nano> operator""ns(long double ns) { return std::chrono::duration<long double, std::nano>(ns); } |
Notas
Este operador se declara en el espacio de nombres std :: literals :: chrono_literals , donde tanto literals como chrono_literals son espacios de nombres en línea . Se puede acceder a este operador mediante:
- using namespace std :: literals ,
- using namespace std :: chrono_literals , o
- using namespace std :: literals :: chrono_literals .
Además, dentro del espacio de nombres std :: chrono , la directiva using namespace literals :: chrono_literals ; es proporcionada por la biblioteca estándar , de modo que si un programador utiliza using namespace std :: chrono ; para obtener acceso a las clases en la biblioteca chrono , los operadores literales correspondientes también se vuelven visibles.
Ejemplo
#include <chrono> #include <iostream> int main() { using namespace std::chrono_literals; auto d1{250ns}; std::chrono::nanoseconds d2{1us}; std::cout << d1 << " = " << d1.count() << " nanoseconds\n" << d2 << " = " << d2.count() << " nanoseconds\n"; }
Salida:
250ns = 250 nanoseconds 1000ns = 1000 nanoseconds
Véase también
|
construye una nueva duración
(función miembro pública de
std::chrono::duration<Rep,Period>
)
|